#ifndef __GAF_PUBLICFACE_H__
#define __GAF_PUBLICFACE_H__

#include "GAF_Define.h"

namespace GAF
{
	//class Graphics -* ForEach
		//class Face
			class PublicFace;
}
typedef GAF::PublicFace			GAF_CPublicFace;

#include "GAF_Face.h"
#include "GAF_Scene.h"

namespace GAF
{
	/// 公用界面基类
	class _ABSTRACT PublicFace : public GAF_CFace
	{
	private:
		typedef STD_LIST<PublicFace*>	PublicFaceList;

	public:
		static void			AddToScene(GAF_CScene* pScene);

	private:
		static PublicFaceList		ms_lstPublicFaces;

	public:
		PublicFace();
		virtual ~PublicFace();

	public:
		DIM_ATTRIB(bool, Enable);
	};
}

#endif
